package com.mc.fil.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mc.common.annotation.Excel;
import com.mc.common.core.domain.BaseEntity;

/**
 * 物候期 对象 fil_phenological_phase
 *
 * @author mc
 * @date 2021-04-14
 */
public class FilPhenologicalPhase extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    private Long id;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createUserId;

    /** 更新人 */
    @Excel(name = "更新人")
    private String updateUserId;

    /** 采种田编号 */
    @Excel(name = "采种田编号")
    private String filId;

    /** 出苗期/返青期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出苗期/返青期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date periodEmergenceDate;

    /** 分叶期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "分叶期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date leafletDate;

    /** 拔节期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "拔节期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date elongatingDate;

    /** 抽穗期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "抽穗期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date headingDate;

    /** 开花期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开花期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date floweringDate;

    /** 成熟期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "成熟期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date matureDate;

    /** 执行人编号 */
    @Excel(name = "执行人编号")
    private String workUserId;

    private List<FilMultimedia> photos;

    public List<FilMultimedia> getPhotos() {
        return photos;
    }

    public void setPhotos(List<FilMultimedia> photos) {
        this.photos = photos;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setCreateUserId(String createUserId)
    {
        this.createUserId = createUserId;
    }

    public String getCreateUserId()
    {
        return createUserId;
    }
    public void setUpdateUserId(String updateUserId)
    {
        this.updateUserId = updateUserId;
    }

    public String getUpdateUserId()
    {
        return updateUserId;
    }
    public void setFilId(String filId)
    {
        this.filId = filId;
    }

    public String getFilId()
    {
        return filId;
    }
    public void setPeriodEmergenceDate(Date periodEmergenceDate)
    {
        this.periodEmergenceDate = periodEmergenceDate;
    }

    public Date getPeriodEmergenceDate()
    {
        return periodEmergenceDate;
    }
    public void setLeafletDate(Date leafletDate)
    {
        this.leafletDate = leafletDate;
    }

    public Date getLeafletDate()
    {
        return leafletDate;
    }
    public void setElongatingDate(Date elongatingDate)
    {
        this.elongatingDate = elongatingDate;
    }

    public Date getElongatingDate()
    {
        return elongatingDate;
    }
    public void setHeadingDate(Date headingDate)
    {
        this.headingDate = headingDate;
    }

    public Date getHeadingDate()
    {
        return headingDate;
    }
    public void setFloweringDate(Date floweringDate)
    {
        this.floweringDate = floweringDate;
    }

    public Date getFloweringDate()
    {
        return floweringDate;
    }
    public void setMatureDate(Date matureDate)
    {
        this.matureDate = matureDate;
    }

    public Date getMatureDate()
    {
        return matureDate;
    }
    public void setWorkUserId(String workUserId)
    {
        this.workUserId = workUserId;
    }

    public String getWorkUserId()
    {
        return workUserId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("createUserId", getCreateUserId())
                .append("createTime", getCreateTime())
                .append("updateUserId", getUpdateUserId())
                .append("updateTime", getUpdateTime())
                .append("filId", getFilId())
                .append("periodEmergenceDate", getPeriodEmergenceDate())
                .append("leafletDate", getLeafletDate())
                .append("elongatingDate", getElongatingDate())
                .append("headingDate", getHeadingDate())
                .append("floweringDate", getFloweringDate())
                .append("matureDate", getMatureDate())
                .append("workUserId", getWorkUserId())
                .append("photos", getPhotos())
                .toString();
    }
}